insert
    overwrite
    table jms_dm.dm_mng_special_need_waybill_detail_dt
    partition
    (dt)
select waybill_no                            --运单号
     , outstore_scantime                     --宽表出库时间
     , sign_scantime                         --宽表签收时间
     , deliver_scansitecode                  --宽表派件网点
     , outstore_scansitecode                 --宽表出库网点
     , sign_scansitecode                     --宽表签收网点
     , network_code                          --网点编码
     , deliver_user_code                     --最晚派件员编码
     , deliver_user_name                     --最晚派件员名字
     , receiver_address                      --收件地址
     , deliver_scantime                      --派件时间
     , sign_time                             --签收时间
     , is_door                               --是否送货上门1是0否
     , source                                --设备来源
     , business_name                         --末端品牌名称
     , store_name                            --门店名称
     , is_reback                             --是否退转件1是0否
     , is_contact                            --是否电联0否1是
     , connect_status                        --0未接通1已接通本方挂断2已接通对方挂断
     , duration_seconds                      --通话时长（秒）
     , is_send_msg
     , send_time                             --发送时间
     , template_name                         --模板名称
     , network_name                          --网点名称
     , agent_code                            --代理区编码
     , agent_name                            --代理区名称
     , fran_code                             --加盟商区编码
     , fran_name                             --加盟商区名称
     , virt_code                             --虚拟代理区编码
     , virt_name                             --虚拟代理区名称
     , substr(sign_time, 1, 10) as date_time --日期t-1
     , 1                        as type      --类型1代表1签收时间2代表派件时间
     , substr(sign_time, 1, 10) as dt        --分区
from jms_dm.dm_mng_special_need_waybill_detail_mid_dt t1
where dt = '{{ execution_date | cst_ds }}'
  and substr(sign_time, 1, 10) <= '{{ execution_date | cst_ds }}'
  and substr(sign_time, 1, 10) >= date_add('{{ execution_date | cst_ds }}', -6)
union all

select waybill_no                                   --运单号
     , outstore_scantime                            --宽表出库时间
     , sign_scantime                                --宽表签收时间
     , deliver_scansitecode                         --宽表派件网点
     , outstore_scansitecode                        --宽表出库网点
     , sign_scansitecode                            --宽表签收网点
     , network_code                                 --网点编码
     , deliver_user_code                            --最晚派件员编码
     , deliver_user_name                            --最晚派件员名字
     , receiver_address                             --收件地址
     , deliver_scantime                             --派件时间
     , sign_time                                    --签收时间
     , is_door                                      --是否送货上门1是0否
     , source                                       --设备来源
     , business_name                                --末端品牌名称
     , store_name                                   --门店名称
     , is_reback                                    --是否退转件1是0否
     , is_contact                                   --是否电联0否1是
     , connect_status                               --0未接通1已接通本方挂断2已接通对方挂断
     , duration_seconds                             --通话时长（秒）
     , is_send_msg
     , send_time                                    --发送时间
     , template_name                                --模板名称
     , network_name                                 --网点名称
     , agent_code                                   --代理区编码
     , agent_name                                   --代理区名称
     , fran_code                                    --加盟商区编码
     , fran_name                                    --加盟商区名称
     , virt_code                                    --虚拟代理区编码
     , virt_name                                    --虚拟代理区名称
     , substr(deliver_scantime, 1, 10) as date_time --日期t-1
     , 2                               as type      --类型1代表1签收时间2代表派件时间
     , substr(deliver_scantime, 1, 10) as dt        --分区
from jms_dm.dm_mng_special_need_waybill_detail_mid_dt t1
where dt = '{{ execution_date | cst_ds }}'
  and substr(deliver_scantime, 1, 10) <= '{{ execution_date | cst_ds }}'
  and substr(deliver_scantime, 1, 10) >= date_add('{{ execution_date | cst_ds }}', -6)
    distribute by dt
    , pmod(hash(waybill_no), 2)